FHIR © HL7.org  |  Server Home  |  XIG Home  |  XIG Stats  |  Server Source  |  FHIR  

FHIR IG Statistics: StructureMap/Consent4to3

Packagehl7.fhir.uv.xver
Resource TypeStructureMap
IdConsent4to3
FHIR VersionR5
Sourcehttp://hl7.org/fhir/extensions/https://build.fhir.org/ig/HL7/fhir-cross-version/StructureMap-Consent4to3.html
URLhttp://hl7.org/fhir/StructureMap/Consent4to3
Version0.1.0
Statusactive
Date2024-02-22T03:16:50+00:00
NameConsent4to3
TitleConsent Transforms: R4 to R3
Realmuv
Authorityhl7
DescriptionConsentTransformsR4toR3

Resources that use this resource

No resources found


Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

/// url = 'http://hl7.org/fhir/StructureMap/Consent4to3'
/// name = 'Consent4to3'
/// title = 'Consent Transforms: R4 to R3'
/// status = 'active'

uses "http://hl7.org/fhir/4.0/Consent" alias Consent as source
uses "http://hl7.org/fhir/3.0/Consent" alias ConsentR3 as target

imports "http://hl7.org/fhir/StructureMap/*4to3"

group Consent(source src : Consent, target tgt : ConsentR3) extends DomainResource <<type+>> {
  src.identifier -> tgt.identifier;
  src.status -> tgt.status;
  src.category -> tgt.category;
  src.patient -> tgt.patient;
  src.dateTime -> tgt.dateTime;
  src.performer -> tgt.consentingParty;
  src.organization -> tgt.organization;
  src.source -> tgt.source;
  src.policy as vs -> tgt.policy as vt then policy(vs, vt);
  src.policyRule as cc then {
    cc.coding as c where system = 'urn:ietf:rfc:3986' then {
      c.code -> tgt.policyRule;
    };
  };
  src.provision as vs then baseProvision(vs, tgt);
}

group baseProvision(source src, target tgt) {
  src.period -> tgt.period;
  src.actor as vs -> tgt.actor as vt then actor(vs, vt);
  src.action -> tgt.action;
  src.securityLabel -> tgt.securityLabel;
  src.purpose -> tgt.purpose;
  src.dataPeriod -> tgt.dataPeriod;
  src.data as vs -> tgt.data as vt then data(vs, vt);
  src.provision as vs -> tgt.except as vt then provision(vs, vt);
}

group policy(source src, target tgt) extends BackboneElement {
  src.authority -> tgt.authority;
  src.uri -> tgt.uri;
}

group provision(source src, target tgt) extends BackboneElement {
  src.type -> tgt.type;
  src.period -> tgt.period;
  src.actor as vs -> tgt.actor as vt then actor(vs, vt);
  src.action -> tgt.action;
  src.securityLabel -> tgt.securityLabel;
  src.purpose -> tgt.purpose;
  src.class -> tgt.class;
  src.code -> tgt.code;
  src.dataPeriod -> tgt.dataPeriod;
  src.data as vs -> tgt.data as vt then data(vs, vt);
}

group actor(source src, target tgt) extends BackboneElement {
  src.role -> tgt.role;
  src.reference -> tgt.reference;
}

group data(source src, target tgt) extends BackboneElement {
  src.meaning -> tgt.meaning;
  src.reference -> tgt.reference;
}


Source

{
  "resourceType": "StructureMap",
  "id": "Consent4to3",
  "text": {
    "status": "generated",
    "div": "<!-- snip (see above) -->"
  },
  "extension": [
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
      "valueCode": "fhir"
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
      "valueInteger": 1,
      "_valueInteger": {
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
            "valueCanonical": "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.xver"
          }
        ]
      }
    },
    {
      "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
      "valueCode": "draft",
      "_valueCode": {
        "extension": [
          {
            "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
            "valueCanonical": "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.xver"
          }
        ]
      }
    }
  ],
  "url": "http://hl7.org/fhir/StructureMap/Consent4to3",
  "version": "0.1.0",
  "name": "Consent4to3",
  "title": "Consent Transforms: R4 to R3",
  "status": "active",
  "date": "2024-02-22T03:16:50+00:00",
  "publisher": "HL7 International / FHIR Infrastructure",
  "contact": [
    {
      "telecom": [
        {
          "system": "url",
          "value": "http://www.hl7.org/Special/committees/fiwg"
        }
      ]
    }
  ],
  "description": "ConsentTransformsR4toR3",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "structure": [
    {
      "url": "http://hl7.org/fhir/4.0/Consent",
      "mode": "source",
      "alias": "Consent"
    },
    {
      "url": "http://hl7.org/fhir/3.0/Consent",
      "mode": "target",
      "alias": "ConsentR3"
    }
  ],
  "import": [
    "http://hl7.org/fhir/StructureMap/*4to3"
  ],
  "group": [
    {
      "name": "Consent",
      "extends": "DomainResource",
      "typeMode": "type-and-types",
      "input": [
        {
          "name": "src",
          "type": "Consent",
          "mode": "source"
        },
        {
          "name": "tgt",
          "type": "ConsentR3",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "identifier",
          "source": [
            {
              "context": "src",
              "element": "identifier",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "identifier",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "status",
          "source": [
            {
              "context": "src",
              "element": "status",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "status",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "category",
          "source": [
            {
              "context": "src",
              "element": "category",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "category",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "patient",
          "source": [
            {
              "context": "src",
              "element": "patient",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "patient",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dateTime",
          "source": [
            {
              "context": "src",
              "element": "dateTime",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dateTime",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "performer",
          "source": [
            {
              "context": "src",
              "element": "performer",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "consentingParty",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "organization",
          "source": [
            {
              "context": "src",
              "element": "organization",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "organization",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "source",
          "source": [
            {
              "context": "src",
              "element": "source",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "source",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "policy",
          "source": [
            {
              "context": "src",
              "element": "policy",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "policy",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "policy",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "policyRule",
          "source": [
            {
              "context": "src",
              "element": "policyRule",
              "variable": "cc"
            }
          ],
          "rule": [
            {
              "name": "coding",
              "source": [
                {
                  "context": "cc",
                  "element": "coding",
                  "variable": "c",
                  "condition": "system = 'urn:ietf:rfc:3986'"
                }
              ],
              "rule": [
                {
                  "name": "code",
                  "source": [
                    {
                      "context": "c",
                      "element": "code",
                      "variable": "vvv"
                    }
                  ],
                  "target": [
                    {
                      "context": "tgt",
                      "element": "policyRule",
                      "variable": "vvv",
                      "transform": "create"
                    }
                  ],
                  "dependent": [
                    {
                      "name": "DefaultMappingGroupAnonymousAlias",
                      "parameter": [
                        {
                          "valueId": "vvv"
                        },
                        {
                          "valueId": "vvv"
                        }
                      ]
                    }
                  ]
                }
              ]
            }
          ]
        },
        {
          "name": "provision",
          "source": [
            {
              "context": "src",
              "element": "provision",
              "variable": "vs"
            }
          ],
          "dependent": [
            {
              "name": "baseProvision",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "tgt"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "baseProvision",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "period",
          "source": [
            {
              "context": "src",
              "element": "period",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "period",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "actor",
          "source": [
            {
              "context": "src",
              "element": "actor",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "actor",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "actor",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "action",
          "source": [
            {
              "context": "src",
              "element": "action",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "action",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "securityLabel",
          "source": [
            {
              "context": "src",
              "element": "securityLabel",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "securityLabel",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "purpose",
          "source": [
            {
              "context": "src",
              "element": "purpose",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "purpose",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dataPeriod",
          "source": [
            {
              "context": "src",
              "element": "dataPeriod",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dataPeriod",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "data",
          "source": [
            {
              "context": "src",
              "element": "data",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "data",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "data",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "provision",
          "source": [
            {
              "context": "src",
              "element": "provision",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "except",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "provision",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "policy",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "authority",
          "source": [
            {
              "context": "src",
              "element": "authority",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "authority",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "uri",
          "source": [
            {
              "context": "src",
              "element": "uri",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "uri",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "provision",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "type",
          "source": [
            {
              "context": "src",
              "element": "type",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "type",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "period",
          "source": [
            {
              "context": "src",
              "element": "period",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "period",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "actor",
          "source": [
            {
              "context": "src",
              "element": "actor",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "actor",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "actor",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "action",
          "source": [
            {
              "context": "src",
              "element": "action",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "action",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "securityLabel",
          "source": [
            {
              "context": "src",
              "element": "securityLabel",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "securityLabel",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "purpose",
          "source": [
            {
              "context": "src",
              "element": "purpose",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "purpose",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "class",
          "source": [
            {
              "context": "src",
              "element": "class",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "class",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "code",
          "source": [
            {
              "context": "src",
              "element": "code",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "code",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dataPeriod",
          "source": [
            {
              "context": "src",
              "element": "dataPeriod",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dataPeriod",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "data",
          "source": [
            {
              "context": "src",
              "element": "data",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "data",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "data",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "actor",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "role",
          "source": [
            {
              "context": "src",
              "element": "role",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "role",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "reference",
          "source": [
            {
              "context": "src",
              "element": "reference",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "reference",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "data",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "meaning",
          "source": [
            {
              "context": "src",
              "element": "meaning",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "meaning",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "reference",
          "source": [
            {
              "context": "src",
              "element": "reference",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "reference",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}